home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Medal Software 3
/
Gold Medal Software - Volume 3 (Gold Medal) (1994).iso
/
database
/
saturn34.arj
/
SATURN.DOC
< prev
next >
Wrap
Text File
|
1994-01-14
|
60KB
|
1,264 lines
SATURN+ VERSION 3.4
INTELLIGENT RELATIONAL DATABASE
CONTENTS
LET'S GO!
ABOUT SATURN
STARTING SATURN
THE SATURN INTERFACE
RETRIEVAL MENU
DESCRIPTION OF OPTIONS
INSTRUCTING SATURN
CREATING KNOWLEDGE TREES
REPLACEMENTS
ACTION WORDS
MEASUREMENTS
FORMATTING OUTPUT
KNOWLEDGE BASE COMPRESSION
ERROR MESSAGES
EXAMPLE APPLICATION
THE SATURN EDITOR
ACKNOWLEDGMENTS
2
Copyright 1993 Servile Software All Rights Reserved.
No part of this publication may be reproduced, transmitted, transcribed,
stored in a retrieval system, or translated into any other language or
computer language in whole or in part, in any form or by any means, whether it
be electronic, mechanical, magnetic, optical, manual or otherwise, without
prior written consent of Servile Software.
Servile Software disclaims all warranties as to this software, whether express
or implied, including without limitation any implied warranties of
merchantability, fitness for a particular purpose, functionality, data
integrity or protection.
MS-DOS is a trademark of Microsoft Corporation.
Thanks are due to the following people for their patience, assistance and
incentives in the evolution of Saturn;
Malcom Rowe
Deloris Probert
Stephen Yarrow
Dave Mayer
Dave Beecham
System Requirements:
Saturn requires a PC with an 80286 or higher processor and a colour
(CGA,EGA,VGA,SVGA) monitor. MS/PC DOS version 3 or higher is required.
No hard disk is required.
3
LET'S GO!
Saturn is the easiest to use relational database in the world. It is easy to
use because it accepts data, commands and queries in human English forming the
links between data items itself!
Saturn comes with an educational encyclopaedia file called "general.knb". When
you start Saturn, it tries to read this file. If you want to access a
different knowledge base, include its name when you start Saturn.
For example, to get going with the general knowledge base start Saturn with
the command;
SATURN
To use the example video catalogue knowledge base instead, start Saturn with
the command;
SATURN VIDEO
And then select the QUERY option from the Saturn Interface menu....
4
ABOUT SATURN
Saturn is an easy to use relational database. You store your data in knowledge
bases using the supplied program SATEDIT.EXE. The data is stored just as you
would write it on paper. No formatting is required except for the usual
English grammar and punctuation.
Because Saturn is so quick and easy to use it lends itself to the sort of
applications that home users want. Use Saturn to:
* Catalogue your video/record/stamp/coin etc collection
* Store details of your friends and family
* Provide an educational reference for your children
* Provide a technical reference for you
* Assist with crossword puzzles
Data is retrieved using English commands.
The complete Saturn system is comprised of a number of programs:
SATURN.EXE An interactive intelligent relational database.
DBF2SAT.EXE A program for converting xBase files into Saturn
knowledge bases.
5
STARTING SATURN
Before using Saturn ensure that you have a second copy of your knowledge
bases in case data corruption should occur.
Saturn is started-up by entering the command SATURN from the DOS prompt. You
can also specify the name of the knowledge base to load. If you don't specify
the name of a knowledge base Saturn will assume GENERAL.KNB, the general
knowledge base.
For example. To Start Saturn with the general knowledge base, you would do the
following;
Firstly, make sure that DOS is set to the directory holding both Saturn and
the general knowledge base. Then enter the command SATURN.
For example. To Start Saturn with a knowledge base called "FAMILY", you would
do the following;
If the family knowledge base is in the same directory as Saturn, then make
sure that DOS is set to the directory holding Saturn and the knowledge base
and enter the command SATURN FAMILY. If, however, the knowledge base is in a
different directory, perhaps C:\DATA\FAMILY, then you would make sure that DOS
is set to the directory holding Saturn and enter the command SATURN
C:\DATA\FAMILY\FAMILY.
6
THE SATURN INTERFACE
When you start-up Saturn from the DOS command prompt, you are presented with
the "Saturn Interface". This is a front-end menu providing access to
facilities for editing, appending and querying data.
At the bottom of the Saturn Interface screen is displayed a menu of available
facilities. You should move the highlight bar with the cursor arrow keys to
the facility you require, and then press ENTER to select that facility.
┌──────┐
│SATURN│
└──┬───┘
│
┌──────────────────────┼────────────────────────┐
│ │ │
┌──┴───┐ ┌───┴────┐ ┌────┴────┐
│EDITOR│ │APPENDER│ │RETRIEVER│
└──────┘ └────────┘ └─────────┘
Saturn Modules
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ │
│ File Edit Append Query Font Exit │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
The Saturn Interface
7
FILE:
The "File" facility allows the name of a different knowledge base to be
selected. The Saturn interface provides you with a window containing the names
of the knowledge bases recorded in the current disk directory. There may be
additional entries past the bottom of the window. These can be reached by
pressing the cursor down arrow when the last entry in the window is
highlighted. To select a knowledge base for the other facilities, highlight
its name and press ENTER. If you want to create a new knowledge base, select
the <NEW> entry. You will then be prompted to enter the name of the knowledge
base to be created. This knowledge base may then be created with either the
"Edit" or "Append" facility.
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ ┌──────────────┐ │
│ │ dating.knb │ │
│ │ general.knb │ │
│ │ movies.knb │ │
│ │ myths.knb │ │
│ │ people.knb │ │
│ │ places.knb │ │
│ │ shake.knb │ │
│ │ video.knb │ │
│ │ virus.knb │ │
│ │ weapons.knb │ │
│ │ zoology.knb │ │
│ │ <NEW> │ │
│ └──────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ File │
│Highlight the name of the required knowledge base and press ENTER. │
│Select <NEW> to create a new knowledge base. │
│Press Esc to return to the menu without selecting a different knowledge base. │
└──────────────────────────────────────────────────────────────────────────────┘
Selecting a knowledge base with the Saturn Interface
8
APPEND:
The "Append" facility allows an existing knowledge base to be appended to the
end of the currently selected knowledge base. The Saturn Interface requires
you to enter the name of the knowledge base which contains the entries to
append to the current knowledge base.
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ Append │
│Enter the name of the knowledge base to append, or press Esc to abort entry │
│ │
│Name: │
└──────────────────────────────────────────────────────────────────────────────┘
Preparing to append a knowledge base to the current one
9
QUERY:
The "Query" facility passes control through to the Saturn retrieval system.
FONT:
The "Font" facility enables users with an EGA, VGA or SVGA monitor to select a
different typeface for displayed text.
The supplied fonts all include their "height" in their name. The standard EGA
font has a height of 14. Selecting a font with a smaller height enables more
lines of text to be displayed. The computer's hardware will not display fonts
which are bigger than the maximum height supported. VGA/SVGA monitors have a
standard font height of 16. If your computer is equipped with a CGA monitor,
selecting different fonts will not have any effect.
Please note. The choice of font has no effect upon printed output from Saturn.
A font remains in effect untill you exit Saturn.
All fonts are 100% compatible with Servile Software's PC-FONT character
generator software.
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ │
│ ┌──────────────┐ │
│ │ blob14.fnt │ │
│ │ blob16.fnt │ │
│ │ bway14.fnt │ │
│ │ bway16.fnt │ │
│ │ easy16.fnt │ │
│ │ human16.fnt │ │
│ │ newyk16.fnt │ │
│ │ print14.fnt │ │
│ │ print16.fnt │ │
│ │ script14.fnt │ │
│ │|script16.fnt │ │
│ └──────────────┘ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│Highlight the name of the required character font and press ENTER. │
│ │
│Press Esc to return to the menu without selecting a different font. │
└──────────────────────────────────────────────────────────────────────────────┘
Selecting a different Font
Exit:
The "Exit" facility terminates the Saturn Interface and returns control to the
DOS. You can also select this facility by pressing Esc.
10
RETRIEVAL MENU
The retirieval screen display is divided into three sectors: Title box,
display box and menu box.
Menu options are displayed in the bottom box. Each option may be highlighted
in turn by pressing the cursor left and right arrow keys. The highlighted
option may be selected by pressing the Enter key.
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Loading knowledge base "general.knb" │
│Encoding knowledge base │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ Show Print Show list Show details Print list │
│ │
│ Print details Load Browse Query Locate Sub Quit │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Saturn Retrieval System Menu
11
DESCRIPTION OF OPTIONS
Show
The 'Show' option may be selected to review data about any single subject.
Saturn will request that you enter the subject you wish to review, and will
then display the data stored about this subject in the display box. In the
menu box may be displayed a scrolling list of associated topics.
The associated topics menu may be too large to display all at once in the menu
box. If there are more entries past the last one displayed, a downward
pointing arrow will be displayed to the left of the last entry. Similarly, if
there are more topics before the first one displayed an upward pointing arrow
will be displayed to the left of the first displayed topic. You may move the
highlight bar with the cursor up and down arrow keys, the page up and page
down keys provide quick up and down movement, and the home and end keys
highlight the first and last topics respectively. To display the details
stored about the highlighted topic press the Enter key. To return to the main
Saturn menu press the Esc key.
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Loading knowledge base "general.knb" │
│Encoding knowledge base │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Subject? │
│> │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Requesting A Subject To Show
12
The following screen shot shows the result of a Saturn 'show' instruction
with the subject 'frog'. This example was created with the supplied
'general' knowledge base.
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│A FROG IS AN AMPHIBIAN OF THE ORDER ANURA. │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Associated AMPHIBIAN │
│Topics ANIMAL │
│ WATER │
│ | OXIDE │
└─────────────────────────────────────────────────────────────────────────────┘
Associated Topics Menu With More Options Below
13
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│A FROG IS AN AMPHIBIAN OF THE ORDER ANURA. │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Associated | OXIDE │
│Topics COMPOUND │
│ OXYGEN │
│ | ELEMENT │
└─────────────────────────────────────────────────────────────────────────────┘
Associated Topics Menu With More Options Above And Below
14
Print
The 'Print' option is similar to the 'Show' option, but sends all data
recorded about subjects applicable to the entered subject to the printer. Once
again Saturn requires you to type in the subject to be retrieved. All data
items related to the entered subject are then sent to the printer.
Show List
The 'Show List' option requests Saturn to display a list of all recorded data
subjects meeting a specified criteria. The selection criteria may be left
blank to list everything, or it may be entered to restrict the list. For
example, you may wish to list the subject headings for every animal recorded
in the current knowledge base. To do this select the 'Show List' option and
enter the selection criteria 'animals'. The ambiguity of the English language
provides a problem for Saturn. If the selection criteria is too general then
loosly related items will be selected. If this is a problem try tightening up
the selection criteria. For example replace the selection criteria 'animals'
with 'mammals' or 'reptiles' or 'mammals and reptiles and birds'. Try to be as
specific as possible.
Show Details
The 'Show Details' option requests Saturn to display all recorded data about
subjects meeting a specified criteria. The selection criteria may be left
blank to display everything, or it may be entered to restrict the display. For
example, you may wish to review the data recorded for all composers recorded
in the current knowledge base. To do this select the 'Show Details' option and
enter the selection criteria 'composers'.
Print List
The 'Print List' option requests Saturn to print a list of all recorded data
subjects meeting a specified criteria. The selection criteria may be left
blank to list everything, or it may be entered to restrict the list. For
example, you may wish to list the subject headings for every animal recorded
in the current knowledge base. To do this select the 'Print List' option and
enter the selection criteria 'animals'.
15
Print Details
The 'Print Details' option requests Saturn to print all recorded data about
subjects meeting a specified criteria. The selection criteria may be left
blank to print everything, or it may be entered to restrict the display. For
example, you may wish to review the data recorded for all composers recorded
in the current knowledge base. To do this select the 'Print Details' option
and enter the selection criteria 'composers'.
Load
The 'Load' option requests Saturn to load a knowledge base from disk
replacing the current knowledge base. Saturn will ask you for the name of the
knowledge base to load. If you don't supply a name, the current knowledge base
will be reloaded.
If you have the Shareware version of Saturn, then you are limited to 20 load
operations. After this limit is exceeded Saturn will cease to function. You
must then register your copy.
16
Browse
The 'Browse' option displays a scrolling list of all the subject headings
recorded in the current knowledge base in the display box.
The browse menu may be too large to display all at once in the display box. If
there are more entries past the last one displayed, a downward pointing arrow
will be displayed to the left of the last entry. Similarly, if there are more
topics before the first one displayed an upward pointing arrow will be
displayed to the left of the first displayed topic. You may move the highlight
bar with the cursor up and down arrow keys, the page up and page down keys
provide quick up and down movement, and the home and end keys highlight the
first and last subjects respectively.
Typing at the keyboard will move the highlight bar to the first entry matching
the characters typed. For example, to quickly move to the entry TURKEY type T
the highlight bar moves to the first entry starting with T. Type U the
highlight bar moves to the first entry starting TU. If no entry does starts
with the characters typed the highlight bar will remain static. Any new
characters typed at the keyboard will recommence the quick search starting
with the next character typed.
To display the details stored about the highlighted subject press the Enter
key. To return to the main Saturn menu press the Esc key.
When a subject is selected with the 'Browse' option, it is displayed as though
it had been selected with the 'Show' option. A list of associated topics is
displayed in the menu box.
17
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ | SE5 │
│ SEA DART │
│ SEA GOOSEBERRY │
│ SEA KILLER │
│ SEA SPARROW │
│ SEA WOLF │
│ SEACAT │
│ SEAL │
│ SEASPRITE │
│ SEA_URCHIN │
│ SEA_URCHINS │
│ SECRETIN │
│ SEDGEMOOR │
│ | SEDGWICK │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ Show Print Show list Show details Print list │
│ │
│ Print details Load Browse Query Locate Sub Quit │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
A browse Menu
18
Query
The 'Query' option allows entry of ANY Saturn command direct into Saturn.
Typical queries that Saturn can understand are:
IS A HORSE AN ANIMAL?
WHERE WAS SHAKESPEAR BORN?
WHEN DID SHAKESPEAR DIE?
WHAT IS A TREE?
WHICH TREE DO ACORNS COME FROM?
WHAT DOES THE HEART DO?
WHAT DO CATS EAT?
WHAT DOES ACID REACT WITH?
WHAT IS THE CAPITAL OF ENGLAND?
WHERE IS BOMBAY?
WHICH COUNTRY IS DUBLIN IN?
WHO WAS SHAKESPEAR?
DO CATS EAT VEGETABLES?
DOES ACID REACT WITH PAPER?
WHO FOUNDED SCHOLASTIC THEOLOGY?
IS LONDON THE CAPITAL OF ENGLAND?
DOES JOHN SMITH SMOKE?
┌─────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATURN+ V3.4 (c)1994│
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│Enter query │
│> │
│ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Entering A Query
19
Locate
The 'Locate' option equates to a 'Where is....' command. Saturn
requests that you enter a subject, and then displays the data relevant to that
subject's location. Saturn locates subjects by searching for key words which
describe position; CAPITAL OF, NORTH, SOUTH, EAST, WEST, BETWEEN, SEPARATING,
BETWEEN and ON. Given a data item; "LONDON IS THE CAPITAL OF ENGLAND", Saturn
will give the location of LONDON as "IN ENGLAND". Similarly, given the data
item; "GHOSTBUSTERS IS ON TAPE 6 AT COUNTER 1340", Saturn will give the
location of "GHOSTBUSTERS" as "ON TAPE 6 AT COUNTER 1340".
Sub
The 'Sub' option creates an extract knowledge base containing only entries
from the current knowledge base which meet specified criteria. After creation,
this knowledge base is loaded and replaces the current knowledge base. Saturn
informs you how many entries are present in the extract knowledge base.
This facility is intended for use where you wish to quickly and easily access
only a part of an existing knowledge base. For example, with the dating agency
example you may wish to create a 'Sub' of 'men' so that you can quickly browse
just the male entries. Or if you have catalogued your video collection you may
want a sub knowledge base of comedies.
Quit
The 'Quit' option terminates Saturn and passes control back to DOS.
20
CREATING KNOWLEDGE TREES
Saturn is modelled upon the memory system of the human brain. Just like the
human brain Saturn makes use of sets of data, "Knowledge Trees", to enhance
the speed and reliability of data retrieval. If you are still unclear about
the idea of knowledge trees, consider your knowledge of animals. You know
that all mammals are animals. And so, taught that an item, "xyz" is a "mammal"
you automatically store that information away with a tag identifying the item
"xyz" with the set "animal". You know that all scientists are people, and so
told that "abc" is a scientist, you can instantly deduce that "abc" is a
person. Your knowledge of data sets was probably learnt so long ago that you
forget learning them, or else the learning was so subtle as to be
unnoticeable.
Saturn requires knowledge trees to be declared by statements of the format;
/ALL subject ARE set name
For example;
/ALL MAMMALS ARE ANIMALS
Declares a data set "ANIMALS" and assigns a member, "MAMMALS" to it. A
subsequent declaration;
/ALL FISH ARE ANIMALS
Appends the member "FISH" to the existing data set for "ANIMALS".
These declarations can be added to a knowledge base with any text editor or
word processor. There is no need to make duplicate sets for plural and
singular forms of words, Saturn can deduce the singular from the plural.
The main use of knowledge trees is for preventing erroneous deductions. Saturn
will attempt to deduce facts when ever possible. However, just like a child,
Saturn can make errors if it has not been taught enough. For example:
Given that;
"An adder is a snake"
"A snake is a reptile"
"A reptile is an animal"
Saturn can deduce that an adder is an animal.
However, given ambiguous data about the word "Turkey", that is that "Turkey is
a country. A turkey is a bird" followed by other data relating to Turkey, the
country such as:
"Ankarra is the capital of Turkey"
Saturn will erroneously deduce that Ankarra is a bird! It can be taught not to
make this deduction by knowledge tree entries which declare capitals as
separate from animals, for example:
21
/ALL BIRDS ARE ANIMALS
/ALL CAPITALS ARE PLACES
These knowledge tree definitions are essential for use with generalised
knowledge bases where queries of associated data are required. For example. To
extract details of all PLACES from the general knowledge base it is essential
to specify;
/ALL VILLAGES ARE PLACES
/ALL TOWNS ARE PLACES
/ALL CITIES ARE PLACES
And so on. This enables Saturn to realise that given an entry such as;
"Woking is a town in Surrey."
That Woking is therefore a PLACE, because Woking is a town, and ALL TOWNS ARE
PLACES.
22
REPLACEMENTS
Replacements are of two types; the first refers to where something comes from
or to deduce something about an object and follows the format;
+object
replacement
For example;
+ENGLISH
ENGLAND
or
+AFRICAN
AFRICA
or
+MEN
HE
This first type of replacement allows Saturn to understand phrases
such as;
A BADGER LIVES IN ENGLAND
And deduce from it that;
A BADGER IS ENGLISH
And to allow selection of data relating to 'MEN' based upon references to 'HE'
within the data. Problems arise when data refers to both 'HE' and 'SHE' in
such cases. For example the following data refernce will confuse Saturn into
believing that Queen Alexandra is both a man and a woman!
*ALEXANDRA
QUEEN ALEXANDRA WAS THE DAUGHTER OF CHRISTIAN IX OF DENMARK. SHE WAS BORN IN
1844 AND DIED IN 1925. SHE MARRIED EDWARD VII IN 1863 WHEN HE WAS THE PRINCE
OF WALES.
The offending item is the word 'HE' which refers to Edward VII. Saturn is not
intelligent enough to realise that the word 'HE' does not refer to the primary
subject, Queen Alexandra.
23
The second type of replacement forces Saturn to read the data associated with
another entry. This follows the format;
*object
#other object
For example;
*CATS
#CAT
24
ACTION WORDS
Action words (verbs) are declared to Saturn by the @ prefix in the knowledge
base. Saturn uses action words to select answers to questions such as WHAT
DOES A thing DO? For example, to tell Saturn that the word "REACT" is an
action, put the line;
@REACT
In the knowledge base. Saturn automatically adds suffixes, "ING", and "S" to
actions when trying to deduce actions. So there is no need for separate
entries for "REACTS" and "REACTING".
25
MEASUREMENTS
Measurements and comparisons of measurements are used everyday by people. We
have no problem with the concept of 'size'. For example, I was contacted by a
user of Saturn version 2.2 who wanted to use Saturn to run a dating agency. He
wanted to be able to extract names on the basis of people who weighed between
values and who were over or under certain heights. That is, "give me a list of
all Greek men who weigh more than 9 stone and weigh less than 12 stone and who
are between 5ft 6" and 6ft tall". Although you and I, as humans can readily
understand and indeed extract from a file of details people matching these
requirements, the process we use to do so is very esoteric.
The psychology of size comparison is a complex area which we take for granted.
If I say that I have a brother who is 5ft 4" tall, and that I am 5ft 8" tall.
And I then ask you which of us is tallest, you will have no problem in
deciding that I am taller. How do we make these decisions? If we break the
data down we might realise. The data states that 'brother' is '5ft 4" tall'
and that 'I' am '5ft 6" tall'. Previous data has established within our mind
that the term 'taller' requires us to compare the size of the known items and
accept only the larger. In this case the data item 'I'.
The addition of superflous data, such as weight will not confuse the human
mind. If the data statement is changed to:
"My brother is 5ft 4" tall and weighs 8 stone and has size 7 feet. I am 5ft 8"
tall and weigh 9 stone and have size 9 feet"
We can still easily decide "which is taller" by scanning the data for units of
measurement applicable to the term 'taller'. If we ask the question, "which is
larger?" we will get different answers from different people. Some people will
equate 'larger' with weight, and some with 'height' and some with both. Some
very bright people may ask us to qualify our question. The term 'larger' is a
general term relating to a comparison of size, but which unit of size?
I hope I am not boring you with this discussion of measurement, but I wish to
point out that comparisons of measurement is a non-exact science. It is highly
error prone and as such does not naturally lend itself to being handled by a
computer program. This is why Saturn has not previously attempted to
understand size, and why for the forseable future Saturn's handling of size
will be limited almost to the extent of idiotic.
With version 2.4 Saturn introduced three size comparison qualifiers. 'OVER',
'UNDER' and 'BETWEEN'. These require a value followed by a unit. For example;
"OVER 9 STONE" "UNDER 6 FEET" "BETWEEN 5 AND 6 FEET"
"BETWEEN 30 AND 40 YEARS"
The BETWEEN qualifier MUST follow the illustrated form:
BETWEEN <value> AND <value> <unit>
26
There are a number of restrictions on the use of these three qualifiers.
Saturn cannot understand phrases such as:
"list all men over 20 years and under 30 years"
What will happen is that Saturn will decipher this to mean:
"list all men over 20 years and then list all men under 30 years"
Instead you should say:
"list all men between 20 and 30 years"
27
FORMATTING OUTPUT
Special characters in the data about an object are "|" and "_". When Saturn
encounters a "|" symbol in the data it is displaying it immediately displays
the following data on a new line. The "_" symbol is never displayed but joins
words together to inhibit and force cross referencing to occur.
28
COMBATTING AMBIGUITY
The problem of ambiguity is well ullustrated by the example of the data item
'Turkey'. Turkey is the name of a country, and also the name of a type of
bird. Where you have ambiguous item names like this you are advised to create
two separate entries in the knowledge base with a qualification added to the
item name, for example;
Turkey (Bird)
Turkey (Country)
29
KNOWLEDGE BASE COMPRESSION
When a knowledge base is read, it is automatically compressed before being
stored. This allows much more data to be stored than with previous versions.
30
ERROR MESSAGES
Sometimes things can go wrong! Saturn may not be able to continue to operate
because of a variety of reasons. In these circumstances an error message will
be displayed and Saturn will cease functioning, returning control to the
computer's DOS.
FATAL ERROR: Out of memory
Saturn could not access sufficient memory to continue. If you have other
programs running, try deactivating them and then run Saturn again.
FATAL ERROR: Knowledge tree too complex
This could be for one of three reasons. Firstly a reference in the knowledge
tree references itself, such as;
/ALL PEOPLE ARE PEOPLE
Or, there are more than 100 /ALL entries in the knowledge base, or the
knowledge tree really is too large for another reason. Try pruning it and
run Saturn again.
FATAL ERROR: Unable to open knowledge base
For some reason Saturn could not access the specified knowledge base, perhaps
it does not exist in the specified disk directory?
FATAL ERROR: Out Of Memory Creating Knowledge Tree
Saturn could not access sufficient memory to continue. If you have other
programs running, try deactivating them and then run Saturn again.
FATAL ERROR: Too many declared actions
There is a limit of 50 actions that can be declared in a knowledge base.
FATAL ERROR: Too many declared replacements
There is a limit of 50 replacements that can be declared in a knowledge base.
FATAL ERROR: Out of memory loading data
The knowledge base is too large for the available memory. If you have other
programs running, try deactivating them and then run Saturn again. If not, try
reducing the size of the knowledge base by making use of Saturn's unrivalled
relational capabilities.
FATAL ERROR: Too many data items in knowledge base
Saturn can access a maximum of 7000 data items. The knowledge base contains
more than this limit.
31
If Saturn displays the message; "I can't. The printer's not responding". You
should check that you have a printer connected to the computer. You should
also check that the printer has paper loaded. Also check that the printer is
switched on, plugged in, and on line. Saturn only prints to the parallel port,
it cannot make use of serial printers.
32
EXAMPLE APPLICATION
Cataloguing your home recorded videos with Saturn:
Saturn is perfect for storing a catalogue of any description. It provides the
means to quickly locate items, extract items by categories on-the-fly so to
speak etc. Let's imagine you have a collection of home recorded videos, WHICH
IS ILLEGAL and NOT CONDONED BY SERVILE SOFTWARE. To catalogue the collection
you need to be able to identify each video cassette, so you may wish to number
them. You can then enter data about each film/program/cartoon etc into a
knowledge base using SATEDIT. A typical entry will have as its subject the
name of the film/program/cartoon and the body of the data will mention;
which casette it is on
what the counter position is
the type of recording - cartoon, comedy, horror, children's
the starring actors.
The following example, taken from the example file VIDEO.KNB illustrates a
typical film entry. The film's title is 'TOPPER' which is the subject entry.
The film is a comedy, so that's mentioned as are the starring actors and the
location of the film.
*TOPPER
Topper is a black and white comedy starring Cary Grant, Constance Bennett and
Roland Young. It is on video 1 at counter 0000.
Armed with this information Saturn can answer questions such as "Where is
Topper" which it will answer with "on video 1 at counter 0000." A quick way to
do this is to select the 'Locate' option from the menu, and type in the
subject 'Topper'.
The 'List Details' menu option can be used to remind you of what comedies you
have. Simply enter 'Comedy' as the criteria and Saturn will display the
recorded details of all the comedies in your collection.
Cataloguing your CD collection with Saturn:
Just like the video catalogue application, Saturn can be used to catalogue
your record, tape and CD collection. Enabling you to quickly locate which
albumn that particular song is on, remind you of which songs are on which
albumns and who performs what songs.
33
THE SATURN EDITOR
The Saturn Editor is selected from the "Edit" facility of the Saturn Interface
menu.
The editor provides a convenient means of creating new knowledge bases, and
editing the data in existing knowledge bases.
Creating a new knowledge base:
To create a new knowledge base select the "File" facility from the Saturn
Interface menu. Highlight the '<NEW>' file name and press ENTER. Saturn will
then prompt you to enter the name of the knowledge base to create. Enter the
name and press ENTER. Now select the "Edit" facility from the Saturn Interface
Menu.
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATEDIT V2.0 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
Loading knowledge base newbase.knb from disk
WARNING! Unable to load knowledge base.
SUBJECT:
F1 Help F2 Save F3 Load F4 Record Esc Exit
Fig 1. Creating a new knowledge base
34
Adding/amending a subject:
Next to the SUBJECT: prompt, type in the title of the subject to add or amend
and press Enter. The Saturn Editor will then open a large edit window. In this
edit window will be displayed the data already recorded about the subject.
┌──────────────────────────────────────────────────────────────────────────────┐
│Servile Software SATEDIT V2.0 (c)1994│
└──────────────────────────────────────────────────────────────────────────────┘
Knowledge Base: general.knb
SUBJECT: England
╒══════════════════════════════════════════════════════════════════════════════╕
│England is a country in west Europe. It is the largest division of the united │
│kingdom._ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
╘══════════════════════════════════════════════════════════════════════════════╛
F1 Help F2 Insert subject F3 Insert previous subject F4 Replay
Amending data
Saving:
From the Subject prompt you can save the changes you have made by pressing F2
Loading:
From the Subject prompt you can load a different knowledge base by pressing
F3. The changes you have made to the existing knowledge base are saved, and
you are then prompted to enter the name of the knowledge base to load.
35
Record:
Pressing F4 allows a string of characters to be recorded. This string can then
be inserted into the edit window by pressing F4 in the edit window.
Exiting:
Press return or Esc at the subject prompt and satedit will ask if you wish to
save the changes you have made to the knowledge base. Press Y to save and N to
lose any changes you have made. If you select N, to lose any changes made to
the knowledge base, Satedit will ask for confirmation. You should press Y to
exit without saving the changes, or N to changeyour mind and save them.
36
The edit window:
The edit window provides you with the maximum available area for a data item,
12 lines. Editing starts in overtype mode, indicated by a small rectangular
cursor. You can toggle between insert and over-type modes by pressing the key
marked "Insert". To exit the edit window press the key marked "Esc". The table
below lists all special keys used in the edit window.
Key Function
Esc Save text and exit.
Left arrow Move left one character
Right arrow Move right one character
Up arrow Move up one line
Down arrow Move down one line
Home Move to start of line
End Move to end of line
Tab Move to next tab position
Shift-Tab Move to previous tab position
Ctrl-T Delete word to right
Ctrl-Y Delete current line
Page Up Move to top of page
Page Down Move to bottom of Page
Ctrl-Home Move to start of text
Ctrl-End Move to end of text.
Delete Delete character at cursor
Backspace Delete character to left of cursor
Insert Toggle insert mode
Return Insert a blank line line
Ctrl-Page Up Move to first line of window
Ctrl-Page Down Move to last line of window
F1 Help
F2 Auto-type current subject heading. This saves retyping subject
names in the edit window.
F3 Auto-type previous subject heading. This saves retyping subject
names in the edit window.
F4 Auto-type a previously recorded string of text.
37
ACKNOWLEDGMENTS
Saturn was developed under a desire to satisfy a need for a particular
individual. Saturn is dedicated to that individual, Deloris.
Data used in the supplied knowledge bases has been derived from information
recorded in a multitude of works including:
The Waverley Encyclopaedia
The Modern Cyclopaedia (1906)
Pears Encyclopaedia (Editions 78, 89 and 99)
The Chancellor Illustrated Family Encylopedic Dictionary (1989)
Murrays Manual of Mythology (1936)
Soviet Airpower (1978)
The Concise Oxford Dictionary (6th Edition)
Odhams Encyclopaedia (Illustrated)
38
This program is protected by international copyright law. You may freely copy
the Shareware version so long as it is supplied in an unmodified form with all
supporting documentation.
SATURN was written by Matthew Probert and published by Servile Software. All
enquiries should be addressed to;
Matthew Probert
Servile Software
5 Longcroft Close
Basingstoke
Hampshire
RG21 1XG
England
Telephone 0256 478576
SUPPORT IS ONLY AVAILABLE TO REGISTERED USERS!